package com.tbit.uqbike.service.base;


import com.tbit.uqbike.object.pojo.BatteryModelDetail;
import com.tbit.uqbike.object.value.LoginInfo;

import java.util.List;

/**
 * 电池方案详细service
 *
 * @author Leon
 * 2017年2月24日 下午4:09:17
 */
public interface BatteryModelDetailService {
    /**
     * 添加
     *
     * @param batteryModelDetail
     */
    void insert(BatteryModelDetail batteryModelDetail);

    /**
     * 删除
     *
     * @param batteryModelDetailId
     */
    void del(Integer batteryModelDetailId);

    /**
     * 根据方案id查询
     *
     * @param batteryModelId
     * @return
     */
    List<BatteryModelDetail> getByBatteryModelId(Integer batteryModelId, Integer rowCount, Integer pageNO);

    /**
     * 根据设备id查询
     *
     * @param machineId
     * @return
     */
    BatteryModelDetail getByMachineId(Integer machineId, Float vol);

    /**
     * 查询总数
     *
     * @param batteryModelId
     * @return
     */
    Integer getTotal(Integer batteryModelId);

    /**
     * 批量添加
     *
     * @param batteryModelDetail
     */
    void addList(List<BatteryModelDetail> batteryModelDetail);

    /**
     * 批量修改
     *
     * @param loginInfo
     * @param batteryModelId
     * @param name
     * @param remark
     * @param maxVols
     * @param minVols
     * @param batteryPers
     * @param milages
     */
    void editList(LoginInfo loginInfo, Integer batteryModelId,
                  String name, String remark, String maxVols, String minVols,
                  String batteryPers, String milages);

    /**
     * @description: 根据车辆Id获取车辆绑定的电池方案详细
     * @author: mo.shanyong
     * @date: 2025/4/21 14:42
     * @param: machineId 车辆Id
     * @return: java.util.List<com.tbit.uqbike.object.pojo.BatteryModelDetail>
     */
    List<BatteryModelDetail> getByMachineId(Integer machineId);
}  